// 放置所有的axios相关的配置

// 优化根路径
// 接口已挂
// axios.defaults.baseURL = 'http://api-breakingnews-web.itheima.net'

// 新版接口
axios.defaults.baseURL = 'http://big-event-api-t.itheima.net'

// 优化请求头 headers 需要带上身份认证信息 ==> 通过拦截器实现
// 添加请求拦截器
axios.interceptors.request.use(
    function (config) {
        // 在发送请求之前做些什么

        // config ==> 每次ajax请求的配置项  {url, method, headers 。。。}

        // console.log("在发送请求之前做些什么", config.url);

        // 优化 headers 不论是 /api 还是 /my 开头的 都会带上token信息
        // config.headers.Authorization = localStorage.getItem("token");

        // 优化 /my 开头的需要带上token信息
        if (config.url.indexOf('/my') !== -1) {
            // 说明含有 /my 就需要带上token信息
            config.headers.Authorization = localStorage.getItem('token')
        }

        return config
    },
    function (error) {
        // 对请求错误做些什么
        return Promise.reject(error)
    }
)

// 添加响应拦截器
axios.interceptors.response.use(
    function (response) {
        // 对响应数据做点什么

        // response 响应回来的数据
        // console.log("响应拦截器 ", response);

        // 做个判断 ==> 优化控制用户的访问权限
        if (
            response.data.status === 1 &&
            response.data.message === '身份认证失败！'
        ) {
            // 就需要让用户回到登录页面中，重新登录进来
            location.href = './login.html'
        }

        return response
    },
    function (error) {
        // 对响应错误做点什么
        return Promise.reject(error)
    }
)
